﻿// ----------------------------------------------------------------------------
// <summary>
//   This file is used by Code Analysis to maintain SuppressMessage 
//   attributes that are applied to this project.
//   Project-level suppressions either have no target or are given 
//   a specific target and scoped to a namespace, type, member, etc.
//
//   To add a suppression to this file, right-click the message in the 
//   Error List, point to "Suppress Message(s)", and click 
//   "In Project Suppression File".
//   You do not need to add suppressions to this file manually.
// </summary>
// ----------------------------------------------------------------------------

using System.Diagnostics.CodeAnalysis;

using GBricks;

[assembly: SuppressMessage("Microsoft.Design", "CA2210:AssembliesShouldHaveValidStrongNames", Justification = Justifications.TemporarySolution)]
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "GBricks.Collections", Justification = Justifications.TemporarySolution)]

[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ItemDictionary`2.#System.Collections.Generic.ICollection`1<System.Collections.Generic.KeyValuePair`2<!0,!1>>.IsReadOnly", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.OrderedDictionary`2.#System.Collections.Generic.ICollection`1<System.Collections.Generic.KeyValuePair`2<!0,!1>>.IsReadOnly", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ICollection`1<!0>.Remove(!0)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ISet`1<!0>.Add(!0)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ISet`1<!0>.ExceptWith(System.Collections.Generic.IEnumerable`1<!0>)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ISet`1<!0>.IntersectWith(System.Collections.Generic.IEnumerable`1<!0>)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ISet`1<!0>.SymmetricExceptWith(System.Collections.Generic.IEnumerable`1<!0>)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ISet`1<!0>.UnionWith(System.Collections.Generic.IEnumerable`1<!0>)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ICollection`1<!0>.IsReadOnly", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ICollection`1<!0>.Add(!0)", Justification = Justifications.ByDesign)]
[assembly: SuppressMessage("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes", Scope = "member", Target = "GBricks.Collections.ReadOnlySet`1.#System.Collections.Generic.ICollection`1<!0>.Clear()", Justification = Justifications.ByDesign)]

[assembly: SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Scope = "type", Target = "GBricks.Collections.ReadOnlyHashSet`1", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Scope = "type", Target = "GBricks.Collections.ReadOnlySet`1", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Scope = "type", Target = "GBricks.Collections.ReadOnlySortedSet`1", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1711:IdentifiersShouldNotHaveIncorrectSuffix", Scope = "type", Target = "GBricks.Collections.IReadOnlyOrderedDictionary`2", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Scope = "type", Target = "GBricks.Collections.IReadOnlyOrderedDictionary`2", Justification = Justifications.SpecificCollectionName)]

[assembly: SuppressMessage("Microsoft.Naming", "CA1711:IdentifiersShouldNotHaveIncorrectSuffix", Scope = "type", Target = "GBricks.Collections.MultiDictionary", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Multi", Scope = "type", Target = "GBricks.Collections.MultiDictionary", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Multi", Scope = "member", Target = "GBricks.Collections.MultiDictionary.#ToMultiDictionary`3(System.Collections.Generic.IEnumerable`1<!!0>,System.Func`2<!!0,!!1>,System.Func`2<!!0,!!2>,System.Collections.Generic.IEqualityComparer`1<!!1>)", Justification = Justifications.SpecificCollectionName)]
[assembly: SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Multi", Scope = "member", Target = "GBricks.Collections.MultiDictionary.#ToMultiDictionary`4(System.Collections.Generic.IEnumerable`1<!!0>,System.Func`2<!!0,!!1>,System.Func`2<!!0,!!2>,System.Func`2<System.Linq.IGrouping`2<!!1,!!2>,!!3>,System.Collections.Generic.IEqualityComparer`1<!!1>)", Justification = Justifications.SpecificCollectionName)]

[assembly: SuppressMessage("Microsoft.Globalization", "CA1309:UseOrdinalStringComparison", MessageId = "GBricks.NullableString+NullableStringComparer.#ctor(System.StringComparer)", Scope = "member", Target = "GBricks.NullableString.#.cctor()", Justification = Justifications.ByDesign)]

// Disabled in a ruleset file
//[assembly: SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed", Justification = Justifications.ByDesign)]
//[assembly: SuppressMessage("Microsoft.Design", "CA1000:DoNotDeclareStaticMembersOnGenericTypes", Justification = Justifications.ByDesign)]
//[assembly: SuppressMessage("Microsoft.Design", "CA1062:Validate arguments of public methods", Justification = Justifications.ByDesign)]
